home *** CD-ROM | disk | FTP | other *** search
Wrap
Text File | 2006-03-15 | 44.0 KB | 1,429 lines
class FlashPaper.MainView { var m_mainMC; var m_viewMode; var m_isHandheld; var m_treeWidth; var m_docDpiToScreenDpiFactor; var m_mainView; var m_toolbarView; var m_treeView; var m_dividerView; var m_documentView; var controller; var focus_mc; var textSnapshot_ts; static var ZOOM_MIN = 10; static var ZOOM_MAX = 999; static var TREE_WIDTH = 200; static var KEY_ZOOM_DISTANCE = 5; var m_currentPage = 0; var m_numPages = 0; var m_numPagesLoaded = 0; var m_forceWidth = 0; var m_forceHeight = 0; var m_currentScale = 100; var m_pageFitScale = 100; var m_pageWidthScale = 100; var m_currentCursorMC = null; var m_numMouseHides = 0; var m_screenDPI = 0; var m_cursorFocus = null; var m_ctrlKeyMonitorIntervalID = 0; var m_copied = false; var m_nextTabIndex = 1; var m_lastPageChanged = -1; var m_scrollingEnabled = true; var m_zoomingEnabled = true; var m_accSilentList = null; function MainView(p_main_mc) { AsBroadcaster.initialize(this); this.m_mainMC = p_main_mc; this.m_accSilentList = new Array(); this.m_viewMode = this.getConfigString("INITIAL_VIEW"); this.m_currentScale = parseFloat(this.m_viewMode); if(!isNaN(this.m_currentScale) && this.m_currentScale >= FlashPaper.MainView.ZOOM_MIN && this.m_currentScale <= FlashPaper.MainView.ZOOM_MAX) { this.m_viewMode = "zoom"; } else { this.m_currentScale = 100; } this.m_isHandheld = this.getConfigString("HANDHELD") == "true"; this.m_treeWidth = FlashPaper.MainView.TREE_WIDTH; this.m_screenDPI = parseFloat(this.getConfigString("SCREEN_DPI")); this.m_docDpiToScreenDpiFactor = this.m_screenDPI / this.m_mainMC.dpi; this.m_mainMC.m_mainView = this; this.m_mainMC.onEnterFrame = function() { var _loc2_ = this; var _loc1_ = _loc2_.m_mainView; _loc1_.loadPages(); if(_loc2_._currentframe == _loc2_._totalframes) { _loc2_.stop(); delete _loc2_.onEnterFrame; _loc1_.broadcastMessage("internal_onDocumentLoaded"); _loc1_.onResize(); } }; this.m_mainMC.onMouseDown = function() { this.m_mainView.updateCursor(); if(FPUI.Component.focusedComponent != null && FlashPaper.Utils.doMouseHitTest(FPUI.Component.focusedComponent) == false) { Selection.setFocus(null); } }; this.m_mainMC.onMouseMove = this.m_mainMC.onMouseUp = function() { this.m_mainView.updateCursor(); }; this.m_mainMC.onUnload = function() { this.m_mainView.cleanupCursor(); }; for(var i in this.m_mainMC.cursors_mc) { this.m_mainMC.cursors_mc[i]._visible = false; } if(this.m_mainMC == _level0) { Stage.showMenu = false; Stage.align = "TL"; Stage.scaleMode = "noScale"; this.m_mainMC._xscale = 100; this.m_mainMC._yscale = 100; } else { this.setForcedWidthAndHeight(550,400); } this.m_mainMC.controller = this; this.m_mainMC._quality = "BEST"; this.m_toolbarView = new FlashPaper.ToolbarView(this,this.m_mainMC,this.getConfigString("POPUP_ENABLED") == "true"); p_main_mc.toolbar_mc._xscale = 100; p_main_mc.toolbar_mc._yscale = 100; this.m_treeView = new FlashPaper.TreeView(this,this.m_mainMC.tree_mc); this.m_mainMC.tree_mc._xscale = 100; this.m_mainMC.tree_mc._yscale = 100; this.m_dividerView = this.m_mainMC.divider_mc; this.m_dividerView._xscale = 100; this.m_dividerView._yscale = 100; this.m_dividerView.setMainView(this); this.m_documentView = this.m_mainMC.document_mc; this.m_documentView._xscale = 100; this.m_documentView._yscale = 100; this.m_documentView.setMainView(this,this.getConfigString("SEARCH_TO_TOP") == "true"); if(this.m_mainMC.fpBookmarks_array === undefined || this.m_mainMC.fpBookmarks_array.length == 0 || this.getConfigString("HIDE_SIDEBAR") == "true") { this.m_mainMC.divider_mc._visible = false; this.m_mainMC.tree_mc._visible = false; this.m_treeWidth = 0; delete this.m_mainMC.fpBookmarks_array; } var messages = this.m_mainMC.message_mc; messages.setController(this); messages.setCursorManager(this); messages.setListVisible(false); var i = 1; while(i <= this.getNumberOfPages()) { var width_i = eval("pageWidth" + i); if(width_i == undefined) { width_i = this.getDocumentWidth(); } var height_i = eval("pageHeight" + i); if(height_i == undefined) { height_i = this.getDocumentHeight(); } this.m_numPages = this.m_numPages + 1; this.broadcastMessage("internal_onAddPage",width_i,height_i); i++; } Stage.addListener(this); Key.addListener(this); this.onResize(); this.setCurrentPage(parseInt(this.getConfigString("INITIAL_PAGE"))); var b = this.getConfigString("INITIAL_BOOKMARK"); if(b != "") { var bm = this.findBookmark(b,this.m_mainMC.fpBookmarks_array); if(bm != null) { this.goToAnchor(this.m_mainMC.fpAnchors_o[bm.anchorName_str]); } } var b = this.getConfigString("INITIAL_ANCHOR"); if(b != "") { var anchor = this.m_mainMC.fpAnchors_o[b]; if(anchor) { this.goToAnchor(anchor); } } this.onResize2(); this.initializeTabbing(); this.initializeAccessibility(); } static function disableLMR(mc) { var _loc1_ = mc; _loc1_.tabEnabled = false; _loc1_.middle.tabEnabled = false; _loc1_.left.tabEnabled = false; _loc1_.right.tabEnabled = false; } function initializeTabbing() { var _loc2_ = this.m_mainMC.toolbar_mc.controls_mc; var _loc1_ = undefined; _loc1_ = this.m_mainMC; _loc1_.toolbar_mc.tabEnabled = false; _loc1_.cursors_mc.tabEnabled = false; _loc1_.tree_mc.tabEnabled = false; _loc1_.divider_mc.tabEnabled = false; _loc1_.divider_mc.gripper_mc.tabEnabled = false; _loc1_ = this.m_mainMC.document_mc; _loc1_.tabEnabled = true; _loc1_.focusEnabled = true; _loc1_.bg_mc.tabEnabled = false; _loc1_.pages_mc.tabEnabled = false; _loc1_.corner_mc.tabEnabled = false; _loc1_ = this.m_mainMC.toolbar_mc.toolbarBg_mc; _loc1_.tabEnabled = false; _loc1_.middle_mc.tabEnabled = false; _loc1_.middle_mc.fill_mc.tabEnabled = false; _loc1_.middle_mc.dropShadow_mc.tabEnabled = false; _loc1_.right_mc.tabEnabled = false; _loc1_.left_mc.tabEnabled = false; _loc1_ = this.m_mainMC.toolbar_mc.brandClip_mc; _loc1_.tabEnabled = false; _loc1_.gotoLink_btn.tabEnabled = false; _loc1_._icon.tabEnabled = false; _loc1_ = _loc2_; _loc1_.tabEnabled = false; _loc1_.dividePager_mc.tabEnabled = false; _loc1_.divideZoom_mc.tabEnabled = false; _loc1_.dividePrint_mc.tabEnabled = false; _loc1_.divideTools_mc.tabEnabled = false; _loc1_ = _loc2_.find_mc; _loc1_.tabEnabled = false; FlashPaper.MainView.disableLMR(_loc1_.findBg_mc); _loc1_ = _loc2_.currZoom_mc; _loc1_.tabEnabled = false; FlashPaper.MainView.disableLMR(_loc1_.currZoomBg_mc); _loc1_ = _loc2_.currPg_mc; _loc1_.tabEnabled = false; FlashPaper.MainView.disableLMR(_loc1_.currPgBg_mc); _loc2_.numPgs_txt.tabEnabled = false; _loc2_.prevNext_mc.tabEnabled = false; var _loc3_ = this.m_nextTabIndex; this.m_mainMC.toolbar_mc.tabIndex = _loc3_++; _loc2_.panTool_mc.tabIndex = _loc3_++; _loc2_.selectTool_mc.tabIndex = _loc3_++; _loc2_.find_mc.find_txt.tabIndex = _loc3_++; _loc2_.find_mc.findButton_mc.tabIndex = _loc3_++; _loc2_.divideZoom_mc.tabIndex = _loc3_++; _loc2_.zoom_sld.tabIndex = _loc3_++; _loc2_.currZoom_mc.currZoom_txt.tabIndex = _loc3_++; _loc2_.fitPage_mc.tabIndex = _loc3_++; _loc2_.fitWidth_mc.tabIndex = _loc3_++; _loc2_.currPg_mc.currPg_txt.tabIndex = _loc3_++; _loc2_.prevNext_mc.prevPg_mc.tabIndex = _loc3_++; _loc2_.prevNext_mc.nextPg_mc.tabIndex = _loc3_++; _loc2_.print_mc.tabIndex = _loc3_++; _loc2_.popup_mc.tabIndex = _loc3_++; _loc2_.hiddenToolsBtn_mc.tabIndex = _loc3_++; _loc1_ = this.m_mainMC.toolbar_mc; _loc1_.createEmptyMovieClip("accessible_mc",-16384); _loc1_.accessible_mc.visible = true; _loc1_.accessible_mc.tabIndex = _loc3_++; _loc1_.accessible_mc.tabEnabled = false; _loc1_.accessible_mc.createEmptyMovieClip("prevPg_mc",1); _loc1_.accessible_mc.createEmptyMovieClip("nextPg_mc",2); _loc1_.accessible_mc.prevPg_mc.tabIndex = _loc3_++; _loc1_.accessible_mc.nextPg_mc.tabIndex = _loc3_++; this.m_mainMC.document_mc.tabIndex = _loc3_++; this.m_nextTabIndex = _loc3_; } function getLanguageObject() { var _loc1_ = this.m_mainMC.fpLocalizations_o[System.capabilities.language]; if(_loc1_ == null) { _loc1_ = this.m_mainMC.fpLocalizations_o.en; } return _loc1_; } function initializeAccessibility() { var _loc1_ = this; var _loc3_ = _loc1_.getLanguageObject(); _loc1_.m_mainMC._accProps = new Object(); _loc1_.m_mainMC._accProps.name = _loc3_.DOCUMENT; _loc1_.makeSilent(_loc1_.m_mainMC.tree_mc,true); _loc1_.makeSilent(_loc1_.m_mainMC.divider_mc,true); var toolbar_mc = _loc1_.m_mainMC.toolbar_mc; _loc1_.addAccProp(toolbar_mc,_loc3_.TOOLBAR,""); _loc1_.makeSilent(toolbar_mc.toolbarBg_mc,true); _loc1_.makeSilent(toolbar_mc.brandClip_mc,true); _loc1_.makeSilent(toolbar_mc.brandClip_mc._icon,true); _loc1_.makeSilent(toolbar_mc.popup_mc,true); var _loc2_ = toolbar_mc.controls_mc; _loc1_.makeSilent(_loc2_.panTool_mc,true); _loc1_.makeSilent(_loc2_.selectTool_mc,true); _loc1_.makeSilent(_loc2_.divideTools_mc,true); _loc1_.makeSilent(_loc2_.find_mc.findBg_mc,true); _loc1_.addAccProp(_loc2_.find_mc.find_txt,_loc3_.FIND,"Search for text by typing in search keywords and hitting the enter key."); _loc1_.addAccProp(_loc2_.find_mc.findButton_mc,_loc3_.FIND,""); _loc1_.makeSilent(_loc2_.divideZoom_mc,true); _loc1_.makeSilent(_loc2_.zoom_sld,true); _loc1_.makeSilent(_loc2_.currZoom_mc.currZoomBg_mc,true); _loc1_.addAccProp(_loc2_.currZoom_mc.currZoom_txt,_loc3_.ZOOM,"Enter the numeric zoom percentage level and hit enter."); _loc1_.addAccProp(_loc2_.fitPage_mc,_loc3_.FIT_PAGE,"This button will refit the document so that only the current page will be visible in the current view."); _loc1_.addAccProp(_loc2_.fitWidth_mc,_loc3_.FIT_WIDTH,"This button will refit the document by maximizing the width of the current page in the current view."); _loc1_.makeSilent(_loc2_.dividePager_mc,true); _loc1_.makeSilent(_loc2_.currPg_mc.currPgBg_mc,true); _loc1_.addAccProp(_loc2_.currPg_mc.currPg_txt,_loc3_.CURR_PAGE,""); _loc1_.makeSilent(_loc2_.numPgs_txt,true); _loc1_.addAccProp(_loc2_.prevNext_mc.prevPg_mc,_loc3_.PREV_PAGE,""); _loc1_.addAccProp(_loc2_.prevNext_mc.nextPg_mc,_loc3_.NEXT_PAGE,""); _loc1_.makeSilent(_loc2_.dividePrint_mc,true); _loc1_.addAccProp(_loc2_.print_mc,_loc3_.PRINT,""); _loc1_.addAccProp(_loc2_.hiddenToolsBtn_mc,_loc3_.OVERFLOW,"This button will reveal the tools that are hidden due to the resized view."); _loc1_.makeSilent(_loc1_.m_mainMC.hiddenToolsList_mc,true); _loc1_.makeSilent(_loc1_.m_mainMC.hiddneToolsList_mc.list_mc,true); _loc1_.makeSilent(_loc2_.popup_mc,true); toolbar_mc.accessible_mc.prevPg_mc.controller = _loc1_; toolbar_mc.accessible_mc.prevPg_mc.onRelease = function() { this.controller.prevPageButton(); }; toolbar_mc.accessible_mc.nextPg_mc.controller = _loc1_; toolbar_mc.accessible_mc.nextPg_mc.onRelease = function() { this.controller.nextPageButton(); }; _loc1_.makeMCHiddenAccButton(toolbar_mc.accessible_mc.prevPg_mc,"AccPrevPage"); _loc1_.makeMCHiddenAccButton(toolbar_mc.accessible_mc.nextPg_mc,"AccNextPage"); _loc1_.setMCHiddenAccButtonAvailable(toolbar_mc.accessible_mc.prevPg_mc,false); var document_mc = _loc1_.m_mainMC.document_mc; _loc1_.addAccProp(document_mc,_loc3_.CONTENT,""); _loc1_.makeSilent(document_mc.bg_mc,true); _loc1_.makeSilent(document_mc.x_sb,true); _loc1_.makeSilent(document_mc.y_sb,true); _loc1_.makeSilent(document_mc.corner_mc,true); Accessibility.updateProperties(); if(Accessibility.isActive()) { _loc1_.zoomToPageFit(); } } function hyperlinksTabEnabled(pageIdx, enable) { var accInfo = eval("fpAltTextMap" + pageIdx); if(accInfo != null) { var page_mc = this.m_documentView.getNthPage(pageIdx); for(var instanceName in accInfo) { if(instanceName.indexOf("link") > -1) { var mc = page_mc.rawPage_mc[instanceName]; if(mc != null) { mc.tabEnabled = enable; } } } } } function activateHyperlinks(pageIdx) { var _loc1_ = this; if(pageIdx != _loc1_.m_currentPage) { _loc1_.hyperlinksTabEnabled(_loc1_.m_currentPage,false); _loc1_.hyperlinksTabEnabled(pageIdx,true); } } function makeAllPagesAccessible() { var listSize = this.m_accSilentList.length; var _loc3_ = 0; while(_loc3_ < listSize) { var _loc2_ = this.m_accSilentList.shift(); var _loc1_ = this.m_documentView.getNthPage(_loc2_).rawPage_mc; _loc1_.tabEnabled = false; this.setRawPageTabIndex(_loc1_,_loc2_); _loc1_._accProps.forceSimple = false; _loc3_ = _loc3_ + 1; } return listSize > 0; } function makePageNotAccessible(pageIdx) { var _loc2_ = pageIdx; var _loc3_ = this; _loc3_.m_accSilentList.push(_loc2_); var _loc1_ = _loc3_.m_documentView.getNthPage(_loc2_).rawPage_mc; _loc1_.tabEnabled = false; _loc3_.setRawPageTabIndex(_loc1_,_loc2_); _loc1_._accProps.forceSimple = true; } function accSilentPageBehindToolbar(pageIdx) { var rawPage_mc; var _loc3_ = pageIdx > 1 ? false : true; var _loc1_ = pageIdx - 1; var toolbarBounds = this.m_mainMC.toolbar_mc.getBounds(_root); var updateAccessibility = this.makeAllPagesAccessible(); while(!_loc3_ && _loc1_ > 0) { rawPage_mc = this.m_documentView.getNthPage(_loc1_).rawPage_mc; var _loc2_ = rawPage_mc.getBounds(_root); if(_loc2_.yMax < toolbarBounds.yMin) { _loc3_ = true; } else if(_loc2_.yMax <= toolbarBounds.yMax) { this.makePageNotAccessible(_loc1_); updateAccessibility = true; } _loc1_ = _loc1_ - 1; } if(updateAccessibility) { Accessibility.updateProperties(); } } function findBookmark(n, a) { var _loc2_ = a; var _loc3_ = n; for(var i in _loc2_) { var _loc1_ = _loc2_[i]; if(_loc1_.publicName_str == _loc3_) { return _loc1_; } _loc1_ = this.findBookmark(_loc3_,_loc1_.subBookmarks_array); if(_loc1_ != null) { return _loc1_; } } return null; } function updateCurrentPage(pageNum_i) { this.m_currentPage = pageNum_i; } function getNumPages() { return this.m_numPages; } function goToAnchor(anchor_o) { var _loc1_ = anchor_o; if(_loc1_) { this.m_currentPage = _loc1_.pageNum_i; this.m_documentView.goToAnchor(_loc1_); } } function goToNamedAnchor(anchorname) { var _loc1_ = this; if(_loc1_.m_mainMC.fpAnchors_o !== undefined) { _loc1_.goToAnchor(_loc1_.m_mainMC.fpAnchors_o[anchorname]); } } function getConfigString(s) { return this.m_mainMC[s]; } function makeSilent(pmc, silent) { var _loc1_ = pmc; if(_loc1_._accProps == null) { _loc1_._accProps = new Object(); } _loc1_._accProps.silent = silent; } function addAccProp(pmc, name, desc) { var _loc1_ = pmc; if(_loc1_._accProps == null) { _loc1_._accProps = new Object(); } if(name.length > 0) { _loc1_._accProps.name = name; } if(desc.length > 0) { _loc1_._accProps.description = desc; } } function makeMCAccessibleImage(pmc, desc) { var _loc1_ = pmc; this.makeSilent(_loc1_,false); _loc1_.tabEnabled = false; _loc1_._accProps.name = "Image"; _loc1_._accProps.description = desc; } function makeMCAccessibleHyperlink(pmc, link) { var _loc1_ = pmc; var _loc3_ = this; _loc3_.makeSilent(_loc1_,false); _loc1_.tabEnabled = false; _loc1_._focusrect = false; _loc1_._accProps.name = link; _loc1_._accImpl = new FPUI.AccObject(FPUI.AccObject.ROLE_SYSTEM_LINK); _loc1_.tabChildren = false; _loc1_.m_mainView = _loc3_; var mc = _loc1_.createEmptyMovieClip("focus_mc",1); var _loc2_ = _loc1_.getBounds(); mc.lineStyle(1,FPUI.Component.kHiliteColor,40); mc.moveTo(_loc2_.xMin,_loc2_.yMin); mc.lineTo(_loc2_.xMax,_loc2_.yMin); mc.lineTo(_loc2_.xMax,_loc2_.yMax); mc.lineTo(_loc2_.xMin,_loc2_.yMax); mc.lineTo(_loc2_.xMin,_loc2_.yMin); mc._visible = false; _loc1_.onRelease = function() { if(this.m_mainView.getCurrentTool() == "pan") { this.m_mainView.goToLinkTarget(link); } }; _loc1_.onRollOver = function() { var _loc2_ = this; var _loc1_ = _loc2_.m_mainView.getCurrentTool(); if(_loc1_ != "pan") { _loc2_.m_mainView.setCursor(_loc2_.m_mainView.getCursorFocus(),_loc1_); } }; _loc1_.onComponentSetFocus = function() { this.focus_mc._visible = true; }; _loc1_.onComponentKillFocus = function() { this.focus_mc._visible = false; }; _loc1_.onKeyDown = function() { if(Key.getCode() == 13) { this.m_mainView.goToLinkTarget(link); } }; } function makeMCHiddenAccButton(pmc, name, actionMC) { var _loc1_ = pmc; this.makeSilent(_loc1_,false); this.addAccProp(_loc1_,name,""); _loc1_.tabEnabled = false; _loc1_._accImpl = new FPUI.AccObject(FPUI.AccObject.ROLE_SYSTEM_PUSHBUTTON); _loc1_._accImpl.set_accState(FPUI.AccObject.STATE_SYSTEM_INVISIBLE,true); _loc1_._accImpl.set_accDefaultAction("Press",_loc1_,"onRelease"); _loc1_.lineStyle(1,16777215,0); _loc1_.moveTo(0,0); _loc1_.lineTo(10,0); _loc1_.lineTo(10,10); _loc1_.lineTo(0,10); _loc1_.lineTo(0,0); _loc1_._visible = true; } function setMCHiddenAccButtonAvailable(pmc, available) { pmc._accImpl.set_accState(FPUI.AccObject.STATE_SYSTEM_UNAVAILABLE,!available); } function setRawPageTabIndex(rawPage_mc, index) { rawPage_mc.tabIndex = this.m_nextTabIndex + index % 10; } function loadPages() { var i = this.m_numPagesLoaded + 1; while(i <= this.m_numPages) { var page_mc = this.m_documentView.getNthPage(i); if(page_mc.rawPage_mc == undefined) { var rawPage_mc = page_mc.attachMovie("page" + i,"rawPage_mc",10); if(rawPage_mc != undefined) { rawPage_mc.tabEnabled = false; rawPage_mc._accProps = new Object(); rawPage_mc._accProps.name = ""; this.setRawPageTabIndex(rawPage_mc,i); Accessibility.updateProperties(); var fpcontent_mc = rawPage_mc; if(rawPage_mc.fpcontent_mc != undefined) { fpcontent_mc = rawPage_mc.fpcontent_mc; } page_mc.fpcontent_mc = fpcontent_mc; page_mc.msg_mc.removeMovieClip(); var factor = this.getDocDpiToScreenDpiFactor() * 20; rawPage_mc._width *= factor; rawPage_mc._height *= factor; fpcontent_mc.fpdoc_mc = this.m_mainMC; if(fpcontent_mc != null && fpcontent_mc.getTextSnapshot != null) { fpcontent_mc.textSnapshot_ts = null; fpcontent_mc.getTS = function(allocateIfNeeded_b) { var _loc1_ = this; if(_loc1_.textSnapshot_ts == null && allocateIfNeeded_b) { _loc1_.textSnapshot_ts = _loc1_.getTextSnapshot(); } return _loc1_.textSnapshot_ts; }; fpcontent_mc.freeTS = function() { delete this.textSnapshot_ts; }; } var accInfo = eval("fpAltTextMap" + i); if(accInfo != null) { for(var instanceName in accInfo) { var mc = rawPage_mc[instanceName]; if(mc != null) { if(instanceName.indexOf("acc") > -1) { this.makeMCAccessibleImage(mc,accInfo[instanceName]); } else if(instanceName.indexOf("link") > -1) { this.makeMCAccessibleHyperlink(mc,accInfo[instanceName]); } var pmc = mc._parent; while(pmc != null) { this.makeSilent(pmc,false); pmc = pmc._parent; } } } Accessibility.updateProperties(); } if(i <= 2) { this.onResize(); } if(i == this.getNumberOfPages()) { this.hyperlinksTabEnabled(1,true); Accessibility.updateProperties(); } if(this.m_numPagesLoaded < i) { this.m_numPagesLoaded = i; } } } i++; } } function setCursorFocus(mc) { this.m_cursorFocus = mc; } function getCursorFocus() { return this.m_cursorFocus; } function setCursor(mc, cursorName) { var _loc1_ = this; if(mc == _loc1_.m_cursorFocus) { var _loc2_ = _loc1_.m_mainMC.cursors_mc[cursorName]; if(_loc2_ === undefined) { _loc2_ = null; } if(_loc1_.m_currentCursorMC != _loc2_) { if(_loc1_.m_currentCursorMC == null) { _loc1_.m_currentCursorMC = _loc2_; _loc1_.showCursor(); } else { _loc1_.m_currentCursorMC._visible = false; if(_loc2_ == null) { _loc1_.hideCursor(); } _loc1_.m_currentCursorMC = _loc2_; } _loc1_.updateCursor(); } } } function showCursor() { var _loc1_ = this; if(_loc1_.m_currentCursorMC) { Mouse.hide(); _loc1_.m_numMouseHides = _loc1_.m_numMouseHides + 1; _loc1_.updateCursor(); } } function updateCursor() { var _loc1_ = this; if(_loc1_.m_currentCursorMC) { _loc1_.m_currentCursorMC._visible = _loc1_.m_numMouseHides > 0; _loc1_.m_currentCursorMC._y = _loc1_.m_currentCursorMC._parent._ymouse; _loc1_.m_currentCursorMC._x = _loc1_.m_currentCursorMC._parent._xmouse; } } function hideCursor() { var _loc1_ = this; if(_loc1_.m_currentCursorMC) { Mouse.show(); _loc1_.m_numMouseHides = _loc1_.m_numMouseHides - 1; _loc1_.updateCursor(); } } function cleanupCursor() { var _loc1_ = this; while(_loc1_.m_numMouseHides > 0) { Mouse.show(); _loc1_.m_numMouseHides = _loc1_.m_numMouseHides - 1; } } function showMessage(s, mc) { var _loc2_ = this; var _loc3_ = false; var _loc1_ = _loc2_.m_mainMC.message_mc; _loc1_.clear(); _loc1_.addItem("",s,""); _loc1_.setListVisible(s != ""); if(mc != null) { _loc1_._x = Math.round(mc.getBounds(_loc2_.m_mainMC).xMin); _loc3_ = _loc1_._visible && _loc1_.getBounds(_loc2_.m_mainMC).xMax > _loc2_.m_mainMC.document_mc.bg_mc.getBounds(_loc2_.m_mainMC).xMax; } return _loc3_; } function zoomTo(percent) { var _loc1_ = this; var _loc2_ = percent; var _loc3_ = _loc1_.m_currentScale; _loc1_.m_currentScale = FlashPaper.Utils.clamp(FlashPaper.MainView.ZOOM_MIN,_loc2_,FlashPaper.MainView.ZOOM_MAX); _loc1_.broadcastMessage("internal_onZoom",_loc1_.m_currentScale); if(_loc3_ != _loc2_) { _loc1_.broadcastMessage("onZoomChanged",_loc2_); _loc1_.m_documentView.delayedBroadcast("onVisibleAreaChanged",true); } } function zoomToNumber(percent_i) { this.m_viewMode = "zoom"; this.zoomTo(percent_i); } function zoomIn() { this.zoomToNumber(Math.min(FlashPaper.MainView.ZOOM_MAX,this.m_currentScale + FlashPaper.MainView.KEY_ZOOM_DISTANCE)); } function zoomOut() { this.zoomToNumber(Math.max(FlashPaper.MainView.ZOOM_MIN,this.m_currentScale - FlashPaper.MainView.KEY_ZOOM_DISTANCE)); } function zoomToPageFit() { var _loc1_ = this; var _loc2_ = _loc1_.getCurrentPage(); _loc1_.m_viewMode = "page"; _loc1_.zoomTo(_loc1_.m_pageFitScale); _loc1_.setCurrentPage(_loc2_); } function zoomToWidthFit() { var _loc1_ = this; _loc1_.m_viewMode = "width"; _loc1_.zoomTo(_loc1_.m_pageWidthScale); } function getViewMode() { return this.m_viewMode; } function getCurrentScaleFraction() { return this.m_currentScale / 100; } function getBoundsInMainViewCoords(mc) { return mc.getBounds(this.m_mainMC); } function getMouseX() { return this.m_mainMC._xmouse; } function getMouseY() { return this.m_mainMC._ymouse; } function getPageFitScale() { return this.m_pageFitScale; } function getPageWidthScale() { return this.m_pageWidthScale; } function getIsHandheld() { return this.m_isHandheld; } function getDocViewWidth() { var _loc1_ = this; return _loc1_.getWidth() - _loc1_.getSidebarWidth() - _loc1_.getDividerWidth(); } function getDocViewHeight() { return this.getHeight() - this.m_documentView._y; } function getDividerWidth() { var _loc1_ = this.m_mainMC.divider_mc; if(!_loc1_._visible) { return 0; } return _loc1_._width; } function onKeyDown() { var _loc1_ = this; _loc1_.showMessage("",null); var _loc3_ = _loc1_.m_zoomingEnabled; var focusStr = Selection.getFocus(); if(focusStr != null) { var s = targetPath(_loc1_.m_mainMC); if(focusStr.substr(0,s.length) == s) { _loc3_ = false; } } var _loc2_ = Key.getCode(); if(_loc2_ == 13) { if(!_loc1_.handleEnterKey()) { _loc1_.m_documentView.keyDown(_loc2_); } } else { var char_s = String.fromCharCode(Key.getAscii()).toLowerCase(); var prevNext_mc = _loc1_.m_mainMC.toolbar_mc.controls_mc.prevNext_mc; var ctrl = Key.isDown(17); if(ctrl && Key.isDown(34)) { _loc1_[prevNext_mc.nextPg_mc.m_clickHandler](); Accessibility.updateProperties(); } else if(ctrl && Key.isDown(33)) { _loc1_[prevNext_mc.prevPg_mc.m_clickHandler](); Accessibility.updateProperties(); } else if(_loc2_ == 17) { if(!_loc1_.m_ctrlKeyMonitorIntervalID) { _loc1_.m_copied = false; _loc1_.m_ctrlKeyMonitorIntervalID = setInterval(_loc1_,"ctrlKeyMonitor",100); } } else if(_loc2_ == 189 || _loc2_ == 109) { if(_loc3_) { _loc1_.zoomOut(); } } else if(_loc2_ == 107 || Key.isDown(16) && Key.isDown(187)) { if(_loc3_) { _loc1_.zoomIn(); } } else if(char_s == "p") { if(_loc3_) { _loc1_.zoomToPageFit(); } } else if(char_s == "w") { if(_loc3_) { _loc1_.zoomToWidthFit(); } } else { _loc1_.m_documentView.keyDown(_loc2_); } } } function copySelection() { var _loc1_ = this; if(_loc1_.getCurrentTool() == "select") { if(!_loc1_.m_mainMC.toolbar_mc.controls_mc.selectTool_mc.fp_hidden) { System.setClipboard(_loc1_.m_documentView.getSelectedText()); } } } function onKeyUp() { var _loc1_ = this; if(Selection.getFocus() == null) { var _loc2_ = Key.getCode(); if(_loc2_ == 67 && Key.isDown(17) || _loc2_ == 17 && Key.isDown(67)) { if(!_loc1_.m_copied) { _loc1_.copySelection(); _loc1_.m_copied = true; } } if(_loc2_ == 17) { clearInterval(_loc1_.m_ctrlKeyMonitorIntervalID); _loc1_.m_ctrlKeyMonitorIntervalID = 0; _loc1_.m_copied = false; } } } function ctrlKeyMonitor() { var _loc1_ = this; if(Key.isDown(67)) { if(!_loc1_.m_copied) { _loc1_.copySelection(); _loc1_.m_copied = true; } } else if(_loc1_.m_copied) { _loc1_.m_copied = false; } } function handleEnterKey() { var _loc2_ = this; var controls_mc = _loc2_.m_mainMC.toolbar_mc.controls_mc; var currPg_txt = controls_mc.currPg_mc.currPg_txt; var _loc3_ = controls_mc.currZoom_mc.currZoom_txt; var find_txt = controls_mc.find_mc.find_txt; var _loc1_ = undefined; var focusStr = Selection.getFocus(); if(focusStr == targetPath(currPg_txt)) { _loc1_ = parseInt(currPg_txt.text); if(isNaN(_loc1_)) { currPg_txt.text = _loc2_.getCurrentPage(); } else { _loc2_.setCurrentPage(_loc1_); } Selection.setFocus(null); return true; } if(focusStr == targetPath(_loc3_)) { _loc1_ = parseInt(_loc3_.text); if(isNaN(_loc1_)) { _loc3_.text = Math.round(_loc2_.m_currentScale) + "%"; } else { _loc2_.zoomToNumber(_loc1_); } Selection.setFocus(null); return true; } if(focusStr == targetPath(find_txt)) { _loc2_.findTextButton(); return true; } return false; } function onResize2() { this.onResize(); this.onResize(); } function onResize() { var _loc1_ = this; var _loc2_ = _loc1_.m_toolbarView.getHeight() - 3; var _loc3_ = _loc1_.m_mainMC.tree_mc; _loc3_._x = 0; _loc3_._y = _loc2_; _loc1_.m_dividerView._x = _loc1_.getSidebarWidth(); _loc1_.m_dividerView._y = _loc2_; _loc1_.m_documentView._x = _loc1_.getSidebarWidth() + _loc1_.getDividerWidth(); _loc1_.m_documentView._y = _loc2_; _loc1_.broadcastMessage("onResize"); _loc1_.m_pageWidthScale = _loc1_.m_documentView.calcPageWidthScale(); _loc1_.m_pageFitScale = _loc1_.m_documentView.calcPageFitScale(); if(_loc1_.m_viewMode == "width") { _loc1_.zoomToWidthFit(); } else if(_loc1_.m_viewMode == "page") { _loc1_.zoomToPageFit(); } else { _loc1_.zoomToNumber(_loc1_.m_currentScale); } _loc1_.m_documentView.rebuildMask(); _loc1_.showMessage("",null); } function onPageMayHaveChanged() { var _loc1_ = this; if(_loc1_.m_lastPageChanged != _loc1_.m_currentPage) { _loc1_.m_lastPageChanged = _loc1_.m_currentPage; _loc1_.broadcastMessage("onPageChanged",_loc1_.m_lastPageChanged); _loc1_.m_documentView.delayedBroadcast("onVisibleAreaChanged",true); } } function getScrolledPage() { return this.m_documentView.getScrolledPage(true); } function getWidth() { return Stage.width; } function getHeight() { return Stage.height; } function getBookmarksArray() { return this.m_mainMC.fpBookmarks_array; } function getDocDpiToScreenDpiFactor() { return this.m_docDpiToScreenDpiFactor; } function getDocumentWidth() { return this.m_mainMC.documentWidth; } function getDocumentHeight() { return this.m_mainMC.documentHeight; } function setForcedWidthAndHeight(w, h) { var _loc1_ = this; _loc1_.m_forceWidth = w; _loc1_.m_forceHeight = h; _loc1_.getWidth = function() { return this.m_forceWidth; }; _loc1_.getHeight = function() { return this.m_forceHeight; }; _loc1_.m_documentView.rebuildMask(); } function popUpWindowButton() { var _loc1_ = _url; _loc1_ = FlashPaper.Utils.replaceInString(_loc1_,"\\","\\\\"); _loc1_ = escape(_loc1_); getURL("javascript:window.open(\"" + _loc1_ + "\", \"fpdoc\").focus();",""); } function brandButton(_mc) { var _loc1_ = this.getLanguageObject(); getURL(_loc1_.GOURL,"_blank"); } function findTextButton() { this.findNext(); } function fitWidthButton() { this.zoomToWidthFit(); } function fitPageButton() { this.zoomToPageFit(); } function printButton() { this.printTheDocument(); } function panButton(mc) { this.setCurrentTool("pan"); } function selectButton(mc) { var _loc1_ = this; if(!_loc1_.m_scrollingEnabled && _loc1_.getCurrentTool() == "select") { _loc1_.setCurrentTool(""); } else { _loc1_.setCurrentTool("select"); } } function prevPageButton() { var _loc1_ = this; if(_loc1_.getCurrentPage() > 1) { _loc1_.setCurrentPage(_loc1_.m_documentView.getScrolledPage(false) - 1); } } function nextPageButton() { var _loc1_ = this; if(_loc1_.getCurrentPage() < _loc1_.getNumPages()) { _loc1_.setCurrentPage(_loc1_.m_documentView.getScrolledPage(true) + 1); } } function dropdownButton() { Selection.setFocus(null); this.m_mainMC.hiddenToolsList_mc.onButtonRelease(); } function broadcastMessage(msg) { } function addListener(listener) { } function removeListener(listener) { } function getViewerType() { return "Macromedia FlashPaper Default Viewer"; } function getViewerVersion() { return 218; } function getCurrentPage() { return this.m_currentPage; } function setCurrentPage(pageNum_i) { var _loc1_ = this; var _loc2_ = FlashPaper.Utils.clamp(1,pageNum_i,_loc1_.m_numPages); _loc1_.activateHyperlinks(_loc2_); _loc1_.m_currentPage = _loc2_; _loc1_.m_documentView.setPage(_loc1_.m_currentPage); _loc1_.accSilentPageBehindToolbar(_loc1_.m_currentPage); } function getNumberOfPages() { return this.m_mainMC.totalPages; } function getLoadedPages() { return this.m_numPagesLoaded; } function showUIElement(part, show) { var _loc3_ = this; var _loc1_ = _loc3_.m_mainMC.toolbar_mc.controls_mc; var _loc2_ = !show; switch(part) { case "PrevNext": _loc1_.prevNext_mc.fp_hidden = _loc2_; _loc1_.currPg_mc.currPg_txt.selectable = show; break; case "Print": _loc1_.dividePrint_mc.fp_hidden = _loc2_; _loc1_.print_mc.fp_hidden = _loc2_; break; case "Tool": _loc1_.panTool_mc.fp_hidden = _loc2_; _loc1_.selectTool_mc.fp_hidden = _loc2_; break; case "Zoom": _loc1_.currZoom_mc.fp_hidden = _loc2_; _loc1_.fitPage_mc.fp_hidden = _loc2_; _loc1_.fitWidth_mc.fp_hidden = _loc2_; _loc1_.zoom_sld.fp_hidden = _loc2_; _loc1_.divideZoom_mc.fp_hidden = _loc2_; break; case "Find": _loc1_.find_mc.fp_hidden = _loc2_; _loc1_.divideTools_mc.fp_hidden = _loc2_; break; case "Pop": _loc1_.popup_mc.fp_hidden = _loc2_; break; case "Page": _loc1_.currPg_mc.fp_hidden = _loc2_; _loc1_.numPgs_txt.fp_hidden = _loc2_; _loc1_.dividePager_mc.fp_hidden = _loc2_; break; case "Sidebar": if(_loc3_.m_mainMC.fpBookmarks_array) { _loc3_.m_mainMC.divider_mc._visible = show; _loc3_.m_mainMC.tree_mc._visible = show; } break; case "Overflow": _loc1_.hiddenToolsBtn_mc.fp_hidden = _loc2_; break; case "ZoomKeys": _loc3_.m_zoomingEnabled = show; } _loc3_.onResize2(); } function printTheDocument() { var _loc1_ = this; if(_loc1_.m_mainMC.printClip_mc == undefined) { _loc1_.m_mainMC.attachMovie("pageList","printClip_mc",9999); _loc1_.m_mainMC.printClip_mc._visible = false; } if(_loc1_.m_mainMC.printClip_mc == undefined) { return false; } var _loc2_ = _loc1_.m_mainMC.printClip_mc.bmovieIsOK !== undefined && _loc1_.m_mainMC.printClip_mc.bmovieIsOK == true; var _loc3_ = _loc1_.m_mainMC.printasbitmap !== undefined && _loc1_.m_mainMC.printasbitmap == true; if(_loc3_) { if(_loc2_) { getURL("printasbitmap:",_loc1_.m_mainMC.printClip_mc); } else { printAsBitmap(_loc1_.m_mainMC.printClip_mc,"bframe"); } } else if(_loc2_) { getURL("print:",_loc1_.m_mainMC.printClip_mc); } else { print(_loc1_.m_mainMC.printClip_mc,"bframe"); } return true; } function setCurrentZoom(percent) { var _loc1_ = percent; var _loc2_ = this; if(_loc1_ == "width") { _loc2_.zoomToWidthFit(); } else if(_loc1_ == "page") { _loc2_.zoomToPageFit(); } else { _loc2_.zoomToNumber(Number(_loc1_)); } } function getCurrentZoom() { return this.m_currentScale; } function setSize(w, h) { var _loc1_ = this; _loc1_.m_mainMC._xscale = _loc1_.m_mainMC._yscale = 100; _loc1_.setForcedWidthAndHeight(w,h); _loc1_.onResize2(); _loc1_.m_mainMC._visible = true; return true; } function goToLinkTarget(linktarget, window) { var _loc1_ = linktarget; if(_loc1_.substr(0,7) == "anchor:") { this.goToNamedAnchor(_loc1_.substr(7)); } else { getURL(_loc1_,window); } } function enableScrolling(flag) { var _loc1_ = this; var _loc2_ = flag; var _loc3_ = _loc1_.m_scrollingEnabled; if(_loc1_.m_scrollingEnabled != _loc2_) { _loc1_.m_scrollingEnabled = _loc2_; _loc1_.broadcastMessage("onEnableScrolling",_loc2_); } return _loc3_; } function getCurrentTool() { return this.m_documentView.getToolMode(); } function setCurrentTool(tool) { return this.m_documentView.setToolMode(tool); } function getTextSelectionRange() { return this.m_documentView.getTextSelectionRange(); } function setTextSelectionRange(sel, skipBroadcast) { this.m_documentView.setTextSelectionRange(sel,skipBroadcast); } function getSelectedText() { return this.m_documentView.getSelectedText(); } function getSidebarWidth() { var _loc1_ = this; if(!_loc1_.m_mainMC.tree_mc._visible) { return 0; } return FlashPaper.Utils.clamp(0,_loc1_.m_treeWidth,_loc1_.getWidth() - _loc1_.m_documentView.getMinWidth()); } function setSidebarWidth(w) { var _loc1_ = this; _loc1_.m_treeWidth = FlashPaper.Utils.clamp(0,w,_loc1_.getWidth() - _loc1_.m_documentView.getMinWidth()); _loc1_.onResize(); } function getFindText() { return this.m_mainMC.toolbar_mc.controls_mc.find_mc.find_txt.text; } function setFindText(s) { this.m_mainMC.toolbar_mc.controls_mc.find_mc.find_txt.text = s; } function findNext() { var found = true; var _loc2_ = this.getFindText(); if(_loc2_.length > 0) { found = this.m_documentView.findText(_loc2_,false); if(!found) { var dot = ""; while(true) { var _loc1_ = this.getLanguageObject().NOT_FOUND; var _loc3_ = _loc1_.indexOf("%"); if(_loc3_ != -1) { _loc1_ = _loc1_.substring(0,_loc3_) + _loc2_ + dot + _loc1_.substring(_loc3_ + 1,_loc1_.length); } if(!this.showMessage(_loc1_,this.m_mainMC.toolbar_mc.controls_mc.find_mc)) { break; } if(_loc2_.length == 0) { break; } _loc2_ = _loc2_.substring(0,_loc2_.length - 1); dot = "..."; } } } if(found) { this.showMessage("",null); } return found; } function getVisibleArea() { return this.m_documentView.getVisibleArea(); } function setVisibleArea(area, skipBroadcast) { this.m_documentView.setVisibleArea(area,skipBroadcast); } }